package com.hxc.basicdata.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.hxc.common.annotation.Excel;
import com.hxc.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 村民信息对象 t_villager_info
 * 
 * @author hxc
 * @date 2021-08-11
 */
public class TVillagerInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;
    /** 组别主键 */
    @Excel(name = "组别主键")
    private Long groupId;
    /** 姓名 */
    @Excel(name = "姓名")
    private String villageName;
    /** 性别 */
    @Excel(name = "性别")
    private Integer sex;
    /** 电话 */
    @Excel(name = "电话")
    private String phone;
    /** 生日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date birthday;
    /** 身份证号 */
    @Excel(name = "身份证号")
    private String idCode;
    /** 户主关系 */
    @Excel(name = "户主关系")
    private String householderRelationship;
    /** 户别 */
    @Excel(name = "户别")
    private String householdType;
    /** 是否党员 */
    @Excel(name = "是否党员")
    private Integer partyMember;

    @Excel(name = "是否本地人员")
    private Integer villageSort;

    @Excel(name = "职务类型(0村民，1组长，2区长)")
    private Integer postType;

    /** ----------------------------------表关联字段----------------------------- */
    /** 组别id */
    @TableField(exist = false)
    private Long communityGroupId;
    /** 组别名称 */
    @TableField(exist = false)
    private String groupName;
    /** 网格社区id */
    @TableField(exist = false)
    private Long communityId;
    /** 网格社区名称 */
    @TableField(exist = false)
    private String areaName;
    /** 网格社区负责人 */
    @TableField(exist = false)
    private String areaPerson;
    /** 账户主键 */
    @TableField(exist = false)
    private Long userId;

    public void setId(Long id) 
    {
        this.id = id;
    }
    public Long getId() 
    {
        return id;
    }

    public void setGroupId(Long groupId) 
    {
        this.groupId = groupId;
    }
    public Long getGroupId() 
    {
        return groupId;
    }

    public void setVillageName(String villageName) 
    {
        this.villageName = villageName;
    }
    public String getVillageName() 
    {
        return villageName;
    }

    public void setSex(Integer sex) 
    {
        this.sex = sex;
    }
    public Integer getSex() 
    {
        return sex;
    }

    public void setPhone(String phone) 
    {
        this.phone = phone;
    }
    public String getPhone() 
    {
        return phone;
    }

    public void setBirthday(Date birthday) 
    {
        this.birthday = birthday;
    }
    public Date getBirthday() 
    {
        return birthday;
    }

    public void setIdCode(String idCode) 
    {
        this.idCode = idCode;
    }
    public String getIdCode() 
    {
        return idCode;
    }

    public void setHouseholderRelationship(String householderRelationship) { this.householderRelationship = householderRelationship; }
    public String getHouseholderRelationship() 
    {
        return householderRelationship;
    }

    public void setHouseholdType(String householdType) 
    {
        this.householdType = householdType;
    }
    public String getHouseholdType() 
    {
        return householdType;
    }

    public void setPartyMember(Integer partyMember) 
    {
        this.partyMember = partyMember;
    }
    public Integer getPartyMember() 
    {
        return partyMember;
    }

    public Integer getVillageSort() { return villageSort; }
    public void setVillageSort(Integer villageSort) { this.villageSort = villageSort; }

    public String getGroupName() { return groupName; }
    public void setGroupName(String groupName) { this.groupName = groupName; }

    public Long getCommunityId() { return communityId; }
    public void setCommunityId(Long communityId) { this.communityId = communityId; }

    public String getAreaName() { return areaName; }
    public void setAreaName(String areaName) { this.areaName = areaName; }

    public String getAreaPerson() { return areaPerson; }
    public void setAreaPerson(String areaPerson) { this.areaPerson = areaPerson; }

    public Long getUserId() { return userId; }
    public void setUserId(Long userId) { this.userId = userId; }

    public Integer getPostType() {
        return postType;
    }
    public void setPostType(Integer postType) {
        this.postType = postType;
    }

    public Long getCommunityGroupId() { return communityGroupId; }
    public void setCommunityGroupId(Long communityGroupId) { this.communityGroupId = communityGroupId; }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("groupId", getGroupId())
            .append("villageName", getVillageName())
            .append("sex", getSex())
            .append("phone", getPhone())
            .append("birthday", getBirthday())
            .append("idCode", getIdCode())
            .append("householderRelationship", getHouseholderRelationship())
            .append("householdType", getHouseholdType())
            .append("partyMember", getPartyMember())
            .append("villageSort", getVillageSort())
            .append("createTime", getCreateTime())
            .append("communityGroupId", getCommunityGroupId())
            .append("groupName", getGroupName())
            .append("communityId", getCommunityId())
            .append("areaName", getAreaName())
            .append("areaPerson", getAreaPerson())
            .append("userId", getUserId())
            .append("postType", getPostType())
            .toString();
    }
}
